package strutil

import (
	"regexp"
	"strings"

	"github.com/axgle/mahonia"
)

// src为要转换的字符串
func CoverGBKToUTF8(src string) string {
	return mahonia.NewDecoder("gbk").ConvertString(src)
}

// 去除html标签
func TrimHtml(src string) string {
	//将HTML标签全转换成小写
	re, _ := regexp.Compile("\\<[\\S\\s]+?\\>")
	src = re.ReplaceAllStringFunc(src, strings.ToLower)
	//去除STYLE
	re, _ = regexp.Compile("\\<style[\\S\\s]+?\\</style\\>")
	src = re.ReplaceAllString(src, "")
	//去除SCRIPT
	re, _ = regexp.Compile("\\<script[\\S\\s]+?\\</script\\>")
	src = re.ReplaceAllString(src, "")
	//去除所有尖括号内的HTML代码，并换成换行符
	re, _ = regexp.Compile("\\<[\\S\\s]+?\\>")
	src = re.ReplaceAllString(src, "\n")
	//去除连续的换行符
	re, _ = regexp.Compile("\\s{2,}")
	src = re.ReplaceAllString(src, "\n")
	//去除空格
	strings.ReplaceAll(src, " ", "")
	return strings.TrimSpace(src)
}

/**
截取序列号右边的句子
如：1、啦啦啦  -》 啦啦啦
*/
func TrimSerialNumber(v string) string {
	reg := regexp.MustCompile("\\d+、(.*)")
	results := reg.FindStringSubmatch(v)
	if len(results) > 1 {
		return results[1]
	} else {
		return v
	}
}
